#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;
bool vis[70][70],a[70];
int main()
{
	int n;
	cin>>n;
	int N=pow(2,n);
	for(int i=1;i<N;i++)
	{
		memset(a,0,sizeof a);
		int flag=0;
		cout<<"<"<<i<<">";
		for(int j=1;j<=N;j++)
		{
			if(!a[j])
			{
				a[j]=1;
				for(int k=j+1;k<=N;k++)
				{
					if(!a[k] && !vis[j][k])
					{
						if(flag)
							cout<<",";
						cout<<j<<"-"<<k;
						flag=1;
						a[k]=vis[j][k]=vis[k][j]=1;
						break;
					}
				}
			}
		}
		cout<<endl;
	}
    return 0;
}
